package com.internal.Search.client;

import java.util.List;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.rpc.RemoteService;
import com.google.gwt.user.client.rpc.RemoteServiceRelativePath;
import com.google.gwt.user.client.ui.SuggestOracle;
import com.internal.Internalhibernate.client.SecUsers;
import com.internal.SharedModule.client.MLLicensesSearchBean;

@RemoteServiceRelativePath("SearchService")
public interface SearchService extends RemoteService {
	/**
	 * Utility class for simplifying access to the instance of async service.
	 */
	public static class Util {
		private static SearchServiceAsync instance;
		public static SearchServiceAsync getInstance(){
			if (instance == null) {
				instance = GWT.create(SearchService.class);
			}
			return instance;
		}
	}
	
	public ProSuggestion getProSuggest(SuggestOracle.Request req)throws Exception;
	
	public List<SecUsers> getSecUsers()throws Exception;
	
	public List<MLLicensesSearchBean> getMLLicensesSearch(int licenNumberFrom)throws Exception;
}
